<?php

if (!defined('BASEPATH')) exit('No direct script access allowed');

class Main extends CI_Controller {
    
    public function __construct() {
        parent::__construct();
        
        
    }

    public function index() {
        //Cada função repete o conteúdo da função index; envia os dados e carrega
        //a view CRUD_V (esta view chama as outras views através da vairável
        // $dados['tela'] que é passada em cada função)        
        
        $dados = array(
            'titulo' => 'crud com codeigniter',
            'tela' => '',
        );
        $this->load->view('crud_v', $dados);
    }

    public function create() {
        //validação do form
        $this->form_validation->set_rules('nome_teste'/*nome do campo form (igual ao bd)*/,
                'NOME', 'required|ucwords|alpha'/*tudo junto, não pode conter espaços entre os pipes*/);
        $this->form_validation->set_rules('endereco_teste','ENDEREÇO', 'required|ucwords');
        
        if($this->form_validation->run()==TRUE){
           
            $dados_form = elements(array('nome_teste', 'endereco_teste'/*nomes dos campos do form 
             * e dos campos da tabela devem ser iguais*/), $this->input->post()/*mesma coisa que $_POST, que vem do form*/);
            $this->load->model('crud_m');//carrega o model crud_m
            //$dados['nome_teste']=md5($dados['nome_teste']); //criptografar em MD5
            $this->crud_m->do_insert($dados_form);//chama a função do crud_m que faz a inserção no bd.
        }
        $dados = array(
            'titulo' => 'crud com codeigniter',
            'tela' => 'create',
        );
        
        
        
        $this->load->view('crud_v', $dados);
    }

    public function retrieve() {
        $dados = array(
            'titulo' => 'crud com codeigniter',
            'tela' => 'retrieve',
        );
        $this->load->view('crud_v', $dados);
    }

    public function update() {
        $dados = array(
            'titulo' => 'crud com codeigniter',
            'tela' => 'update',
        );
        $this->load->view('crud_v', $dados);
    }

    public function delete() {
        $dados = array(
            'titulo' => 'crud com codeigniter',
            'tela' => 'delete',
        );
        $this->load->view('crud_v', $dados);
    }

// Trecho comentado para dar continuidade à aula 6 - introdução CRUD
// 
// 
//    public function index() { 
//        $dados = array(
//            'titulo' => 'Este título foi passado via controller',
//            'texto' => 'Texto enviado pelo controlador',
//            'menu' => array(
//                0 => 'menu 0',
//                1 => 'menu 1',
//                2 => 'menu 2',
//                3 => 'menu 3',
//            ),
//            'segmento' => $this->uri->segment(2), //pega a segunda parte da URL (após o index.php)
//            'pagina' => array(
//                'p2' => 'exemplo3',
//            )
//        );
//
//        $this->load->view('main_v', $dados);
//    }

    public function incluir($user) {
        
    }

    public function ex3() {

        //código abaixo foi repetido no index para não ser necessário chamar a função ex3 (para testes)
        $dados = array(
            'titulo' => 'Este título foi passado via controller',
            'texto' => 'Texto enviado pelo controlador',
            'menu' => array(
                0 => 'menu 0',
                1 => 'menu 1',
                2 => 'menu 2',
                3 => 'menu 3',
            ),
            'segmento' => $this->uri->segment(2), //pega a segunda parte da URL (após o index.php)
            'pagina' => array(
                'p2' => 'exemplo3',
            )
        );

        $this->load->view('main_v', $dados);
    }

}
